* {
  font-family: 'Geist', sans-serif !important;
  font-feature-settings: 'ss01', 'ss02', 'ss03', 'liga' !important;
  -moz-font-feature-settings: 'ss01', 'ss02', 'ss03', 'liga' !important;
  -webkit-font-feature-settings: 'ss01', 'ss02', 'ss03', 'liga' !important;
}

.primaryButton {
  display: inline-block;
  border: 0;
  border-radius: 50px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  color: #fff !important;
  text-decoration: none;
  background: linear-gradient(180deg, var(--color-primary-500) 0%, var(--color-primary-600) 100%);
  box-shadow: inset 1.33px 1.33px 1.33px 0 var(--color-primary-300);
  inset: -1.33px -1.33px 1.33px 0 var(--color-primary-800);
  -webkit-tap-highlight-color: transparent;
  transition: 300ms ease-out;
  cursor: pointer;
}

.primaryButton.large {
  font-size: 16px;
  padding: 16px 24px;
}

.primaryButton.medium {
  font-size: 16px;
  padding: 10px 20px;
}

.primaryButton.small {
  padding: 8px 16px;
  font-size: 14px;
}


.primaryButton:hover {
  transition: 300ms ease-out;
  color: #fff !important;
  background: linear-gradient(180deg, var(--color-primary-600) 0%, var(--color-primary-800) 100%);
}


.secondaryButton:disabled {
  opacity: 0.3;
}

.primaryButton.disabled,
.primaryButton:disabled {
  background: linear-gradient(180deg, #DDDDDD 0%, #C2C2C2 100%);
  box-shadow: inset 1.33px 1.33px 1.33px 0 #EEEEEE;
  inset: -1.33px -1.33px 1.33px 0 #B2B2B2;
}




.secondaryButton {
  display: inline-block;
  border: 1px solid #121212;
  border-radius: 50px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  color: #121212 !important;
  text-decoration: none;
  transition: 300ms ease-out;
  cursor: pointer;
  background-color: transparent;
}

.secondaryButton.large {
  font-size: 16px;
  padding: 16px 24px;
}

.secondaryButton.medium {
  font-size: 16px;
  padding: 10px 20px;
}

.secondaryButton.small {
  padding: 8px 16px;
  font-size: 14px;
}


.secondaryButton:hover {
  color: #fff !important;
  text-decoration: none !important;
  background-color: #121212;
}



.h1_display {
  font-size: 96px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -4%;
  margin: 0;
}

.h1 {
  font-size: 73px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -4%;
  margin: 0;
}

.h2 {
  font-size: 55px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -4%;
  margin: 0;
}

.h3 {
  font-size: 42px;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -4%;
  margin: 0;
}

.h4 {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -4%;
  margin: 0;
}

.h5 {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -3%;
  margin: 0;
}

.h6 {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -2%;
  margin: 0;
}

.subhead_l {
  font-size: 24px;
  line-height: 1.5;
  letter-spacing: -2%;
  font-weight: 500;
  margin: 0;
}

.subhead {
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: -2%;
  margin: 0;
}

.body-text {
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
}

.disclaimer_l {
  font-size: 14px;
  line-height: 1.5;
  margin: 0;
}

.disclaimer {
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 2%;
  margin: 0;
}

.eyebrow {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 2%;
  text-transform: uppercase;
  margin: 0;
}

.eyebrow_s {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 2%;
  text-transform: uppercase;
  margin: 0;
}




/* ==========================================================================
   Design Tokens from Figma – Primitives collection
   Generated on Feb 2026 – Mode 1
   ========================================================================== */

/* ── Colors ─────────────────────────────────────────────────────────────── */

:root {
  /* Primary (main brand green) */
  --color-primary-50: #EAF2FF;
  --color-primary-100: #CFE0FF;
  --color-primary-200: #9FC2FF;
  --color-primary-300: #5A96FF;
  --color-primary-500: #0062E5;
  /* Primary */
  --color-primary-600: #004FC2;
  --color-primary-800: #00378A;


  /* Success (green tones – overlaps somewhat with primary) */
  --color-success-100: #e6faf0;
  --color-success-500: #12a150;
  --color-success-700: #0b7338;

  /* Warning / Attention */
  --color-warning-100: #fff9e6;
  --color-warning-500: #eab308;
  --color-warning-700: #a16207;

  /* Error / Danger */
  --color-error-100: #feeaea;
  --color-error-500: #dc2626;
  --color-error-700: #991b1b;

  /* Neutral / Gray scale */
  --color-neutral-50: #ffffff;
  --color-neutral-100: #f5f5f5;
  --color-neutral-200: #e5e5e5;
  --color-neutral-600: #666666;
  --color-neutral-900: #121212;


  /* ========================================
    Horizoin
  ======================================== */

  --color-horizon-50: #FFF7F3;
  --color-horizon-100: #FBE4DA;
  --color-horizon-200: #F6D1C1;
  --color-horizon-300: #F1C3AD;
  --color-horizon-400: #E8B29B;


  /* ========================================
    Sunrise (Coral / Secondary)
  ======================================== */

  --color-sunrise-50: #FFF3F0;
  --color-sunrise-100: #F8D7D1;
  --color-sunrise-200: #F1BBB2;
  --color-sunrise-300: #E7A69A;
  --color-sunrise-400: #D8897A;
  --color-sunrise-500: #C56E5F;


  /* ========================================
    Sky (Primary)
  ======================================== */

  --color-sky-50: #EAF2FF;
  --color-sky-100: #CFE0FF;
  --color-sky-200: #9FC2FF;
  --color-sky-300: #5A96FF;
  --color-sky-500: #0062E5;
  --color-sky-600: #004FC2;
  --color-sky-800: #00378A;


  /* ========================================
    Accent (Sunlight Gold)
  ======================================== */

  --color-accent-50: #FFF6E3;
  --color-accent-100: #FFE7B3;
  --color-accent-300: #FFD174;
  --color-accent-500: #FFC857;
  --color-accent-600: #E6A93A;
  --color-accent-800: #9C6E16;

}

/* Optional semantic aliases – pick and choose what makes sense for your project */

:root {
  --color-primary: var(--color-primary-500);
  --color-success: var(--color-success-500);
  --color-warning: var(--color-warning-500);
  --color-danger: var(--color-error-500);
  /* or --color-error */
  --color-error: var(--color-error-500);
  --color-background: var(--color-bg-base);
  --color-background-alt: var(--color-bg-alt);
  --color-surface-dark: var(--color-bg-dark);
  --color-text-primary: var(--color-neutral-900);
  --color-text-secondary: var(--color-neutral-600);
  --color-border: var(--color-neutral-200);
}


.color-text-primary {
  color: var(--color-text-primary)
}

.color-text-secondary {
  color: var(--color-text-secondary)
}

.header_link {
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  padding: 12px 16px;
}

/* Material effects */
.shadow-elevated {
  box-shadow: 0 14px 46px #D0D0D0;
}

.shadow-normal {
  box-shadow: 0 2px 10px #D0D0D0;
}



@media (min-width: 10px) and (max-width: 767px) {
  .h1_display {
    font-size: 55px;
  }

  .h1 {
    font-size: 42px;
  }

  .h2 {
    font-size: 32px;
  }

  .h3 {
    font-size: 24px;
  }

  .h4 {
    font-size: 20px;
  }

  .h5 {
    font-size: 18px;
  }

  .h6 {
    font-size: 16px;
  }

  .subhead_l {
    font-size: 20px;
  }

  .subhead {
    font-size: 20px;
  }

  .eyebrow {
    font-size: 14px;
  }

}

@media (min-width: 768px) and (max-width: 1000px) {
  .h1_display {
    font-size: 73px;
  }

  .h1 {
    font-size: 55px;
  }

  .h2 {
    font-size: 42px;
  }

  .h3 {
    font-size: 28px;
  }

  .h4 {
    font-size: 24px;
  }

  .h5 {
    font-size: 20px;
  }

  .h6 {
    font-size: 18px;
  }

  .subhead_l {
    font-size: 20px;
  }

  .subhead {
    font-size: 20px;
  }

  .eyebrow {
    font-size: 14px;
  }

}